package edu.cuit.avatar.loop;

/**
 * 显示前50个素数，每行显示10个
 * 素数：大于1的整数，只能被1和它自身整除的数即是素数
 * 1.判断给定的一个数十不是素数
 * 2.number=2，3，4，5，，，，
 * 3.统计素数个数
 * 4.打印
 * @author Adan
 * 测试一个数是不是一个素数：
 *     检测这个数能否被2，3，4一直到number/2整除，如果能被任意一个整除，就不是素数，break
 *
 */
public class PrimeNumber {
    public static void main(String[] args) {
        final int NUMBER_OF_PRIMES = 50;
        final int NUMBER_OF_LINES = 10;

        //统计素数个数的计算器
        int count = 0;
        int number = 2;
        while(count < NUMBER_OF_PRIMES){
            boolean isPrime = true;
            for(int divisor = 2; divisor <= number / 2; divisor++){
                if(number % divisor == 0){
                    isPrime = false;
                    break;
                }
            }
            if(isPrime){
                count++;
                //打印且控制换行
                //System.out.print(number + (count % NUMBER_OF_LINES == 0 ? "\r\n" : "  "));
                System.out.print(number + "  ");
                if(count % NUMBER_OF_LINES == 0)
                    System.out.println();
            }
            number++;
        }
    }
}
